<?php
/**
 * @file			cfg.php
 * @Author			nic(nic-chen@qq.com)
 * @Create Date:	2011-04-03
 * @Brief			框架配置文件
 */

//---------------------------------------------------------
/// 系统适配器文件的存放目录
define('P_ADAPTER',		SYSPATH . "adapter");
/// class		扩展文件的存放目录
define('P_CLASS',		SYSPATH . "class");
/// function	扩展文件的存放目录
define('P_FUNCTION',	SYSPATH . "function");

/// 系统模块文件的存放目录
define('P_MODS',		APPPATH . "controllers");
/// 管理后台模块文件存放目录
define('P_ADMIN_MODS', P_MODS . 'mgr');
/// 系统模块文件的存放目录
define('P_COMS',		APPPATH . "modules");
/// 系统模板文件的存放目录
define('P_TEMPLATE',	APPPATH . "templates");

/// 系统文件数据（上传数据，缓存数据，字体，LOG 等）的存放目录
define('P_VAR',			APPPATH . "var/");
/// 系统日志文件的存放目录
define('P_VAR_LOG',	P_VAR . "log");
/// 系统永久存储的数据目录
define('P_VAR_DATA',	P_VAR . "data");
/// 系统文件缓存的数据目录
define('P_VAR_CACHE',	P_VAR . "cache");
/// 系统语言文件的存放目录
define('P_VAR_LANG',	P_VAR . "languages");

/// 程序JS文件的存放目录
define('P_JS',			PUBPATH . "js");
/// 程序CSS文件的存放目录
define('P_CSS',			PUBPATH . "css");
/// 程序图片文件的存放目录
define('P_IMG',			PUBPATH . "img");
/// 程序FLASH文件的存放目录
define('P_FLASH',		PUBPATH . "flash");
/// 程序HTML文件的存放目录
define('P_HTML',		PUBPATH . "html");
/// 系统上传文件的数据目录
define('P_UPLOAD',		PUBPATH . "upload");


//----------------------------------------------------------------------
/// 适配器文件扩展名
define('EXT_ADAPTER',		".adp.php");
/// 扩展函数文件扩展名
define('EXT_FUNCTION',		".func.php");
/// 扩展类文件扩展名
define('EXT_CLASS',			".class.php");
/// 系统模块文件扩展名
define('EXT_MODULES',		".mod.php");
/// 系统语言文件扩展名
define('EXT_LANG',			".lang.php");
/// 系统模板文件扩展名
define('EXT_TPL',			".tpl.php");
/// 数据组件文件扩展名
define('EXT_COM',			".com.php");
//----------------------------------------------------------------------
/**
系统路由方式选项，目前可选 0,1,2,3 ;  默认为 0
各个入口的路由方式可以自定义
0 表示	从 $_GET[R_GET_VAR_NAME] 中分析模块路由信息
1 表示	从 $_SERVER['PATH_INFO'] 中分析模块路由信息 显式的
2 表示	从 $_SERVER['PATH_INFO'] 中分析模块路由信息 隐式的，需REWRITE配合
3 表示	混合模式，同时支持 0 与 2 模式
*/
//if ( !defined('R_MODE') ) {define('R_MODE',3);} //移到　初始化中根据系统配置定义
/// 模块路由的变量名 , 当 R_MODE 为 0 时 可用
define('R_GET_VAR_NAME',		"m");
/// 系统默认的模块方法
define('R_DEF_MOD_FUNC',		"default_action");
//----------------------------------------------------------------------
/// 约定的适配器初始化接口方法
define('ADP_INIT_FUNC',			"adp_init");
/// 前置模块HOOK 前缀 ， ACTION_BEFORE_PREFIX+模块方法名 命名的成员方法 将在模块执行前 预先被执行
define('ACTION_BEFORE_PREFIX',	"_before_");
/// 后置模块HOOK 前缀 ， ACTION_AFTER_PREFIX+模块方法名 命名的成员方法 将在模块执行完成后被执行
define('ACTION_AFTER_PREFIX',	"_after_");
/// 是否启用页面 hook
define('ENABLE_PAGE_HOOK',		TRUE);
/// 是否启用模块 Action hook
define('ENABLE_ACTION_HOOK',	TRUE);

//----------------------------------------------------------------------
/// 用于存储全局数据的变量名
define('V_GLOBAL_NAME',			"__GG");
/// 用于存储用户配置的全局变量名
define('V_CFG_GLOBAL_NAME',		"cfg");
/// 判断当前请求是否是 JS 请求的变量理由; 通常 AJAX请求同样被认为是API请求
define('V_JS_REQUEST_ROUTE',	"R:_");

/// 入口名称常量 名
define('ENTRY_CONST_NAME',		'ENTRY_SCRIPT_NAME');
/// 缓存组的KEY前缀
define('GROUP_CACHE_KEY_PRE',	'gCacheKey_');
/// 数据组件的缓存KEY前缀
define('COM_CACHE_KEY_PRE',		'comCache_');
/// cookie 变量名
define('CLIENT_COOKIE',		'NIC_CLIENT_COOKIE');
/// cookie 密钥
define('COOKIE_AUTH_KEY', 'nic_c@@kie_');

/// 存储用户会话数据的 SESSION 变量名
define('CLIENT_SESSION',	'CLIENT_SESSION');
/// 存储管理员会话数据的 SESSION 变量名
define('ADMIN_SESSION',	    'ADMIN_SESSION');
//----------------------------------------------------------------------
?>
